package com.ruoyi.supermarket.service.impl;

import java.util.List;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.ruoyi.supermarket.mapper.NewProductMapper;
import com.ruoyi.supermarket.domain.NewProduct;
import com.ruoyi.supermarket.service.NewProductService;

/**
 * 新鲜好物Service业务层处理
 * 
 * @author 李其伟
 * @date 2023/10/24
 */
@Service
public class NewProductServiceImpl implements NewProductService
{
    @Autowired
    private NewProductMapper newProductMapper;

    /**
     * 查询新鲜好物
     * 
     * @param id 新鲜好物主键
     * @return 新鲜好物
     */
    @Override
    public NewProduct selectNewProductById(Long id)
    {
        return newProductMapper.selectNewProductById(id);
    }

    /**
     * 查询新鲜好物列表
     * 
     * @param newProduct 新鲜好物
     * @return 新鲜好物
     */
    @Override
    public List<NewProduct> selectNewProductList(NewProduct newProduct)
    {
        return newProductMapper.selectNewProductList(newProduct);
    }

    /**
     * 新增新鲜好物
     * 
     * @param newProduct 新鲜好物
     * @return 结果
     */
    @Override
    public int insertNewProduct(NewProduct newProduct)
    {
        return newProductMapper.insertNewProduct(newProduct);
    }

    /**
     * 修改新鲜好物
     * 
     * @param newProduct 新鲜好物
     * @return 结果
     */
    @Override
    public int updateNewProduct(NewProduct newProduct)
    {
        return newProductMapper.updateNewProduct(newProduct);
    }

    /**
     * 上下架新鲜好物
     *
     * @param newProduct 新鲜好物
     * @return 结果
     */
    @Override
    public int publishNewProduct(NewProduct newProduct) {
        NewProduct np = newProductMapper.selectNewProductById(newProduct.getId());
        np.setPublishStatus(newProduct.getPublishStatus());
        return newProductMapper.updateNewProduct(np);
    }

    /**
     * 批量删除新鲜好物
     * 
     * @param ids 需要删除的新鲜好物主键
     * @return 结果
     */
    @Override
    public int deleteNewProductByIds(Long[] ids)
    {
        return newProductMapper.deleteNewProductByIds(ids);
    }

    /**
     * 删除新鲜好物信息
     * 
     * @param id 新鲜好物主键
     * @return 结果
     */
    @Override
    public int deleteNewProductById(Long id)
    {
        return newProductMapper.deleteNewProductById(id);
    }
}
